import { defineStore } from 'pinia'
export const useCounterStore = defineStore('useCounterStore', {
  state: () => {
    return {
      token: '',
      userInfo: '',
      menurouteState:false,
      cancelTokenList:[]
    }
  },
   // 持久化
  persist: {
    // 部分持久化
    pick:['token','userInfo'],
    key: 'HXGW1', // 指定存储的键,
    storage: sessionStorage, // 指定存储方式
  },
  getters: {},
  actions: {

    // 修改用户信息
    settingUserInfo(val) {
      console.log('设置')
      console.log(val)
      this.userInfo = val.userInfo
      this.token = val.token
    },
    // 退出登录
    loginOut(){
      this.$reset();
    },
    // 设置目前菜单路由状态
    setMenuAuto(){
      this.menurouteState = true
    },
    // 设置取消的axios接口
    setCancelToken(c){
      this.cancelTokenList.push(c)
    },
    // 取消axios接口请求
    clearCancleToken(){
      for (let i = this.cancelTokenList.length - 1; i >= 0; i--) {
        console.log(i)
        this.cancelTokenList[i]()
        this.cancelTokenList.splice(i, 1)
      }
    },
    // 重置
    resetState() {
      // 使用重置功能
      this.$reset();
    },
  }
})